package com.py.credit.dao;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.py.credit.entity.CreditStandardCommitment;
import com.py.framework.core.common.Page;

public interface CreditStandardCommitmentDao {

	void insert(@Param(value = "creditStandardCommitment") CreditStandardCommitment creditStandardCommitment);

	List<CreditStandardCommitment> selectForPage(
			@Param(value = "creditStandardCommitment") CreditStandardCommitment creditStandardCommitment,
			@Param(value = "page") Page page);

	List<CreditStandardCommitment> selectByStateForPage(
			@Param(value = "creditStandardCommitment") CreditStandardCommitment creditStandardCommitment,
			@Param(value = "page") Page page);

	void delListById(@Param(value = "list") List<String> list);

	void updateById(@Param(value = "creditStandardCommitment") CreditStandardCommitment creditStandardCommitment);

	CreditStandardCommitment selectById(@Param(value = "id") Integer id);

	// 查询类型
	CreditStandardCommitment selectByType();

	// 分页查询标准
	List<CreditStandardCommitment> selectCriterionForPage(
			@Param(value = "creditStandardCommitment") CreditStandardCommitment creditStandardCommitment,
			@Param(value = "page") Page page);

	List<CreditStandardCommitment> selectCriterionByStateForPage(
			@Param(value = "creditStandardCommitment") CreditStandardCommitment creditStandardCommitment,
			@Param(value = "page") Page page);

	// 修改状态
	void updateStateById(@Param(value = "id") Integer id, @Param(value = "state") String state);

	// 分页查询目录
	List<CreditStandardCommitment> selectContentsForPage(
			@Param(value = "creditStandardCommitment") CreditStandardCommitment creditStandardCommitment,
			@Param(value = "page") Page page);

	List<CreditStandardCommitment> selectContentsByStateForPage(
			@Param(value = "creditStandardCommitment") CreditStandardCommitment creditStandardCommitment,
			@Param(value = "page") Page page);

	// 查询目录类型
	CreditStandardCommitment selectByMlType();

	// 页面查询单条
	CreditStandardCommitment selectOneById(@Param(value = "id") String id);

	// 修改单条
	void updateOneById(@Param(value = "id") String id);
}
